At least certain aspects of the inventions relate to data processing systems and the management of power consumption on those systems. Other aspects of the inventions described herein relate to methods and systems for time keeping in a data processing system.
Power management on a data processing system often involves techniques for reducing the consumption of power by components in the data processing system. The data processing system may be a laptop or otherwise portable computer, such as a handheld general purpose computer or a cellular telephone. The management of power consumption in a portable device which is powered by a battery is particularly important because better power management usually results in the ability to use the portable device for a longer period of time when it is powered by one or more batteries.
Conventional systems typically utilize timers to indicate when a subsystem should be turned off after a period of inactivity. For example, the motors in a hard drive storage system are typically turned off after a predetermined period of inactivity of the hard drive system. Similarly, the backlight or other light source of a display system may be turned off in response to user inactivity which exceeds a predetermined period of time. In both cases, the power management technique is based on the use of a timer which determines when the period of inactivity exceeds a selected duration.
Another technique which is used in the prior art for managing power consumption of data processing systems is shown in FIG. 1. In this technique, the data processing system is switched between at least two different operating points, such as the operating points 12 and 14 shown in the graph 10. Each operating point represents a particular operating voltage and frequency pair. Thus, for example, operating point 12 consumes less power by having the data processing system operate at a lower voltage and also at a lower operating frequency relative to the operating point 14. In the case of operating point 14, the data processing system operates at a higher voltage (V2) and a higher operating frequency (F2).
Certain systems provide the capability to switch power completely off (e.g. set the operating voltage at V=0) if no use is being made of a particular subsystem. For example, certain system on a chip (SOC) provide a power gating feature which allows for particular subsystems to be turned off completely if they are not being used. This approach does not take into account the status of an instruction queue relative to a system which may be turned off before events which are scheduled in the instruction queue.